草庐IT

TypeScript 基础语法

全部标签

javascript - 神秘的语法 onClick={::this.submit}

这个周末我正在浏览一些最近的React存储库,我遇到了一个使用ES6类语法进行组件组合的示例,它有点像这样。classMyThingextendsComponent{constructor(props){super(props)this.state={something:'thething'}}submit(){//dostuff}render(){FireSubmit}}注意::this.submit代替this.submit.bind(this)它有效,但我无法在任何地方找到有关此功能的文档,我觉得自己像个疯子,这个onClick={::this.doSomethingInside

javascript - TypeScript:如何同时使用粗箭头和这个?

我正在使用非常有用的localfatarrow来在回调中保留this上下文。但是,有时我需要访问this如果我没有使用粗箭头会具有的值。一个例子是事件回调,其中this具有事件发生的元素的值(我知道在这个特定的例子中你可以使用event.currentTarget,但为了举例,我们假设您不能这样做):functioncallback(){//Howtoaccessthebuttonthatwasclicked?}$('.button').click(()=>{callback()});注意:我遇到过thisquestion它处理完全相同的问题,但在CoffeeScript中。

Internet Explorer 的 javascript 语法检查

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。关闭7年前。Improvethisquestion是否有一些工具可以对我的JavaScript文件进行语法检查,以查看它们是否包含会影响InternetExplorer的Javascript引擎的语法错误,尤其是多余的尾随逗号?例子:varsome_object={valid:"property",one:"commatoomuch--->",};此代码在FireFox、Chrome和Node.JS中运行良好,但由于

javascript - 指定 TypeScript 输出文件名格式

我需要将TypeScript生成的js文件名更改为其他名称。我该怎么做呢例如我有MyCompany.ClassA.ts默认会生成MyCompany.ClassA.js但是我想要MyCompany.ClassA.generated.js我查看了.tsConfig文件,但在那里找不到任何有用的东西。附言。我正在为Typescript使用VisualStudio2013并生成js文件 最佳答案 要将单个TypeScript文件编译为具有自定义名称的.js,请使用--outFile:tscMyCompany.ClassA.ts--outFi

javascript - 如何从 TypeScript 函数返回一个类?

我将TypeScript与依赖注入(inject)库一起使用,它的工作方式与Angular1非常相似-基本上:注册一个工厂,将您的依赖项作为参数。这就是我在ES6中注册类的方式exportletfactory=()=>{returnclassFoo{}};如果我用TypeScript写同样的东西:exportletfactory=()=>{returnclassFoo{}};编译失败errorTS4025:Exportedvariable'factory'hasorisusingprivatename'Foo'.有没有办法让TypeScript从工厂函数返回一个类?

javascript - typescript 2.1 with async/await 为 angularjs 生成 ES5/ES3 目标

我正在尝试在一个Angular1.5.5项目中使用async/await。鉴于此服务方式getDocumentTypes():angular.IPromise{varurl="api/document/types";this.$log.log(url);returnthis.$http.get(url).then(_=>_.data);}我正在尝试创建该方法的async/await版本。asyncgetDocTypes():angular.IPromise{~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}Intellisenseshowsanerror:TS1055

javascript - 没有 CoffeeScript 的 CoffeeScript 问号语法

CoffeeScript有这样的语法糖:item.getFoo?().fooParam?.bar这转化为长javascript等效于getFoo==null和fooParam==null检查。问题是:除了CoffeeScript之外,有没有什么方法可以在vanillajavascript中使用这种语法和库/翻译器/编译器?我们在我们的项目中使用Traceur,但它没有这样的语法,因为它不符合ES6(尽管我希望它符合)。也许可以通过某种方式在Traceurfork中实现它? 最佳答案 如果您不想要确切的CoffeeScript语义,您

javascript - 如何在 Typescript 1.8 中包含未类型化的节点模块?

Typescript1.8nowsupportsuntypedJSfiles.Toenablethisfeature,justaddthecompilerflag--allowJsoradd"allowJs":truetocompilerOptionsintsconfig.json通过https://blogs.msdn.microsoft.com/typescript/2016/01/28/announcing-typescript-1-8-beta/我正在尝试导入react-tap-event-plugin它没有类型文件。import*asinjectTapEventPluginf

javascript - 尝试让 Cypress、TypeScript 和 IstanbulJS 协同工作

我正在尝试使用IstanbulJS生成代码覆盖率报告对于我在TypeScript中编写的代码并使用Cypress进行了测试.但是事情被报告得不对劲:我创建了一个gitrepositoryMCVE专门针对这个问题,所以你可以准确地重现我的情况:gitclonehttps://github.com/papb/cy-ts-istanbul-questioncdcy-ts-istanbul-questionnpminstallnpmtest#Andthenopenthefile`coverage/index.ts.html`toseetheimageabove.如何解决?详情我有一些用Type

javascript - 跨多个文件将大型 typescript 文件拆分为模块

我目前有一个大的typescript文件,我想拆分。有几个函数和变量只在文件中使用,还有一些类。目前看起来是这样的:varnumbers=[1,2,3];functionformatDate(){...}classWidget{...}classSection{...}我试过将其放入一个模块并将其拆分为几个文件://Widget.tsmoduleReportTemplate{exportclassWidget{...}}//Section.tsmoduleReportTemplate{exportclassSection{...}}//ReportTemplate.ts//////mo